package com.code.AZPlan.model.po;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.util.Date;

/**
 * AZ公告
 *
 * @author tangyifei
 * @since 2020年3月4日09:58:12
 */
@ApiModel("AZ公告PO及持久层对象")
@Builder
@AllArgsConstructor
@NoArgsConstructor
@Data
@JsonIgnoreProperties(value = {"hibernateLazyInitializer", "handler"})
public class AzNotice implements Serializable {

    private static final long serialVersionUID = -3039561723587593834L;

    @ApiModelProperty(value = "主键", example = "1")
    private String id;

    @ApiModelProperty(value = "发布人主键", example = "1")
    private String userId;

    @ApiModelProperty(value = "公告顺序", example = "0")
    private Integer noticeIndex;

    @ApiModelProperty(value = "已经支持的语言", example = "1,2")
    private String supportLanguage;

    @ApiModelProperty(value = "公告中文标题", example = "1")
    private String noticeTitle;

    @ApiModelProperty(value = "公告英文标题", example = "1")
    private String englishNoticeTitle;

    @ApiModelProperty(value = "公告韩文标题", example = "1")
    private String krNoticeTitle;

    @ApiModelProperty(value = "公告日文标题", example = "1")
    private String jpNoticeTitle;

    @ApiModelProperty(value = "公告俄文标题", example = "1")
    private String raNoticeTitle;

    @ApiModelProperty(value = "公告繁体标题", example = "1")
    private String hkNoticeTitle;

    @ApiModelProperty(value = "是否有中文正文 0没有 1有", example = "0")
    private Integer isHaveText;

    @ApiModelProperty(value = "是否有英文正文 0没有 1有", example = "0")
    private Integer isHaveEnText;

    @ApiModelProperty(value = "是否有韩文正文 0没有 1有", example = "0")
    private Integer isHaveKrText;

    @ApiModelProperty(value = "是否有日文正文 0没有 1有", example = "0")
    private Integer isHaveJpText;

    @ApiModelProperty(value = "是否有俄文正文 0没有 1有", example = "0")
    private Integer isHaveRaText;

    @ApiModelProperty(value = "是否有中文繁体正文 0没有 1有", example = "0")
    private Integer isHaveHkText;

    @ApiModelProperty(value = "上下线状态 0下线 1上线 2待上线", example = "0")
    private Integer upDownState;

    @ApiModelProperty(value = "发布状态 0未发布 1已发布", example = "0")
    private Integer publishState;

    @ApiModelProperty(value = "公告中文内容", example = "0")
    private String noticeContent;

    @ApiModelProperty(value = "公告英文内容", example = "0")
    private String englishNoticeContent;

    @ApiModelProperty(value = "公告韩文内容", example = "0")
    private String krNoticeContent;

    @ApiModelProperty(value = "公告日文内容", example = "0")
    private String jpNoticeContent;

    @ApiModelProperty(value = "公告俄文内容", example = "0")
    private String raNoticeContent;

    @ApiModelProperty(value = "公告繁体内容", example = "0")
    private String hkNoticeContent;

    @ApiModelProperty(value = "定时发送时间", example = "0")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
    private Date fixedSendTime;

    @ApiModelProperty(value = "发布时间", example = "0")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
    private Date createTime;

    @ApiModelProperty(value = "更新时间", example = "0")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
    private Date updateTime;

    @ApiModelProperty(value = "上线时间", example = "0")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
    private Date upTime;

}
